跳到主要内容

Fortran 抽象方法

可以只声明绑定和接口的定义,而不需要编写具体的方法:

type, abstract, public :: employee
...
contains
...
procedure(calc_payx), public, deferred :: calc_pay
end type employee
abstract interface
real function calc_payx(this, hours)
implicit none
class(employee) :: this
real, intent(in) :: hours
end function calc_payx
end interface

这样,不能从抽象类型实例化,但可以创建指向该类型的指针。